home *** CD-ROM | disk | FTP | other *** search
- ⓪ (*⓪"hier gibt's ein Problem:⓪"in LTOS klappt die Synchronisation nicht, wenn hyperCACHE verwendet wird.⓪"Obwohl die FPU offenbar bei 1) auf die Datenabholung wartet, tut sie's⓪"nach dem Lesen immer noch. Erst ein 2. Lesezugriff stellt sie zufrieden.⓪ *)⓪ ⓪ (*$C-*)⓪ module t2;⓪ (*$F-*)⓪ ⓪ FROM SYSTEM IMPORT ASSEMBLER;⓪ FROM SFP004 IMPORT FPUInit;⓪ FROM StrConv IMPORT StrToReal;⓪ ⓪ CONST⓪(fpstat = $fffffa40; (* Response word of MC68881 read *)⓪(fpstatlo= $fffffa41;⓪(fpctrl = $fffffa42; (* Control word of MC68881 write *)⓪(fpcmd = $fffffa4a; (* Command word of MC68881 write *)⓪(fpcond = $fffffa4e; (* Condition word of MC68881 write *)⓪(fpop = $fffffa50; (* Operand long of MC68881 read/write *)⓪(fpregsel= $fffffa54; (* register select long read *)⓪(⓪(A2stat = -1; (* Response word of MC68881 read *)⓪(A2ctrl = 1; (* Control word of MC68881 write *)⓪(A2cmd = 9; (* Command word of MC68881 write *)⓪(A2cond = $D; (* Condition word of MC68881 write *)⓪(A2op = $F; (* Operand long of MC68881 read/write *)⓪(A2regsel= $13; (* register select long read *)⓪ ⓪ PROCEDURE @LTOS;⓪"(*$L-*)⓪"BEGIN⓪$ASSEMBLER⓪ DoDl0 TST.B fpstatlo⓪(BEQ DoDl0⓪(MOVE.W #$5500,fpcmd ; FMOVE.D (A0),FP2⓪ !DoDl1 TST.B fpstatlo⓪(BEQ DoDl1⓪(MOVE.L (A0)+,fpop⓪(TST.W fpstat⓪(MOVE.L (A0),fpop⓪ !DoDl3 TST.B fpstatlo⓪(BEQ DoDl3⓪(MOVE.W fpstat,D0⓪(CMPI.W #$0802,D0⓪(BNE DoDErr3⓪(MOVE.W #$6500,fpcmd ; FMOVE.S FP2,D1⓪ !DoDl5 MOVE.B fpstatlo,D0⓪(BEQ DoDl5⓪(SUBQ.B #4,D0⓪(BNE DoDErr2⓪(; 1) die FPU hat das Datum bereitgestellt⓪(MOVE.L fpop,D0⓪(MOVE.W fpstat,D0⓪(CMPI.W #$0802,D0⓪(BNE DoDErr⓪(RTS⓪ DoDErr3 BREAK⓪ DoDErr2 BREAK⓪ !DoDErr LINK A5,#0⓪(BREAK⓪(UNLK A5⓪(CLR.L D0⓪$END⓪"END @LTOS;⓪ (*$L=*)⓪ ⓪ var f: INTEGER; lr: LONGREAL; sr: REAL; p: CARDINAL; b: BOOLEAN;⓪ ⓪ begin⓪"FPUInit;⓪"sr:= SHORT (lr);⓪"sr:= SHORT (lr);⓪"sr:= SHORT (lr);⓪"sr:= SHORT (lr);⓪"ASSEMBLER BREAK END;⓪ ⓪"ASSEMBLER⓪(MOVEQ #1,D7⓪&again:⓪&⓪(MOVE.W #$5500,fpcmd ; FMOVE.D (A0),FP2⓪ !DoDl1 TST.B fpstatlo⓪(BEQ DoDl1⓪(MOVE.L D0,fpop⓪(TST.W fpstat⓪(MOVE.L D0,fpop⓪(MOVE.W fpstat,D0⓪(MOVE.W fpstat,D1⓪(MOVE.W fpstat,D2⓪(MOVE.W fpstat,D3⓪(MOVE.W fpstat,D4⓪(MOVE.W fpstat,D5⓪(MOVE.W fpstat,D6⓪(DBRA D7,again⓪(BREAK⓪"END;⓪ end t2.⓪ ə
- (* $FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFED2912$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DF$FFE965DFÇ$000007F6T.......T.......T.......T.......T.......T.......T.......T.......T.......T.......$000007F6$000005D9$000007F6$00000842$0000052A$FFEBB236$00000916$FFEBB236$FFEBB236$000008EB$FFEBB236$0000090E$000005CF$000005C1$000005DF$00000842êÇé*)
-